package com.example.web_chat.toolsUtil;

import org.springframework.util.DigestUtils;

import java.util.UUID;

public class Secret {

    //加密
    public static String addSecret(String password) {
        // 1. 获取盐值
        String salt = UUID.randomUUID().toString().replace("-", "");
        // 2. 密码+盐值通过md5加密生成密文
        String secret = DigestUtils.md5DigestAsHex((password + salt).getBytes());
        // 3. 盐值+密文保存到数据库中
        String finalPassword = salt + secret;
        return finalPassword;
    }

    //校验
    public static boolean verifyPassword(String password, String finalPassword) {
        // 1. 获取盐值
        String salt = finalPassword.substring(0, 32);
        // 2. 登录密码 + 盐值通过md5加密生成密文
        String secret = DigestUtils.md5DigestAsHex((password + salt).getBytes());
        // 3. 盐值 + 密文与数据库中的比较
        String finPassword = salt + secret;
        if(finalPassword.equals(finPassword)) {
            return true;
        }
        return false;
    }
}
